
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <ctype.h>

/**
 * Funcao para abrir um arquivo, caso o arquivo não possa ser aberto uma mensagem de erro é exibida.
 */
void abreArquivo(FILE **arq, char *nomeArquivo, char *modo);

/**
 * Funcao para fechar um arquivo
 */
void fechaArquivo(FILE **file);

/**
 * Funcao para limpar o conteudo de um arquivoreturn matriz;
 */
void limpaArquivo(char *nomeArq);

/*
 * Funcao para gerar o codigo fonte de um automato finito para o padrao passado por parametro
 * arqSaida -> arquivo de codigo fonte do automato gerado
 * alfabeto -> alfabeto do padrao
 * padrao -> padrao com um caracter adicional
 * matriz -> matriz de estados do automato finito para reconhecer o padrao
 * linha -> numero de linhas da matriz de estados
 * colunas -> numero de colunas da matriz de estados
 */
void gerarCodigoAutomato(char *arqSaida, char *alfabeto, char *padrao, int **matriz, int linhas, int colunas);
